package com.jade.store.operation.vo;
import com.jade.bss.base.utils.EntityVo;
import com.jade.bss.db.IdEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 优惠劵
 */
@Data
@ApiModel(value ="优惠券信息")
public class CouponVo extends EntityVo {
    @ApiModelProperty(value = "名称",required = true)
    private String name;
    @ApiModelProperty(value = "类型")
    private int type;
    @ApiModelProperty(value = "面值")
    private BigDecimal amount=new BigDecimal(0);
    @ApiModelProperty(value = "面值随机")
    private BigDecimal amountFrom=new BigDecimal(0);
    @ApiModelProperty(value = "amountTo")
    private BigDecimal amountTo=new BigDecimal(0);
    @Temporal(TemporalType.DATE)
    @ApiModelProperty(value = "生效时间")
    private Date beginTime;
    @Temporal(TemporalType.DATE)
    @ApiModelProperty(value = "过期时间")
    private Date endTime;
    @ApiModelProperty(value = "发放总量")
    private int couponCount=0;
    public static final int LIMIT_NO=0;//使用不限制
    public static final int LIMIT_YES=1;//使用限制
    @ApiModelProperty(value = "使用限制")
    private int limit=LIMIT_NO;
    @ApiModelProperty(value = "满多少元可使用")
    private BigDecimal limitAmount=new BigDecimal(0);
    @ApiModelProperty(value = "crmLevel")
    private long crmLevel=0;
    @ApiModelProperty(value = "每人限领")
    private int limitGet=0;
    @ApiModelProperty(value = "全部商品",example = "0：全部商品  1：部分商品")
    private int allGoods;
    @ApiModelProperty(value = "店铺编号")
    private long storeId=0;
    @ApiModelProperty(value = "状态")
    private int status;
    @ApiModelProperty(value = "备注")
    private String remark;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public int getCouponCount() {
        return couponCount;
    }

    public void setCouponCount(int couponCount) {
        this.couponCount = couponCount;
    }

    public long getStoreId() {
        return storeId;
    }

    public void setStoreId(long storeId) {
        this.storeId = storeId;
    }

    public int getLimit() {
        return limit;
    }

    public void setLimit(int limit) {
        this.limit = limit;
    }

    public BigDecimal getLimitAmount() {
        return limitAmount;
    }

    public void setLimitAmount(BigDecimal limitAmount) {
        this.limitAmount = limitAmount;
    }

    public long getCrmLevel() {
        return crmLevel;
    }

    public void setCrmLevel(long crmLevel) {
        this.crmLevel = crmLevel;
    }

    public int getLimitGet() {
        return limitGet;
    }

    public void setLimitGet(int limitGet) {
        this.limitGet = limitGet;
    }

    public int getAllGoods() {
        return allGoods;
    }

    public void setAllGoods(int allGoods) {
        this.allGoods = allGoods;
    }

    public BigDecimal getAmountTo() {
        return amountTo;
    }

    public void setAmountTo(BigDecimal amountTo) {
        this.amountTo = amountTo;
    }

    public BigDecimal getAmountFrom() {
        return amountFrom;
    }

    public void setAmountFrom(BigDecimal amountFrom) {
        this.amountFrom = amountFrom;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }
}



 
 